1. <
operating system> An
operating system based on the
FreeBSD version of
Unix, running on top of a
microkernel
(
Mach 3.0 with
darwin 1.02) that offers advanced networking,
services such as the
Apache web server, and support for
both
Macintosh and Unix
file systems.
Darwin was
originally released in March 1999. It currently runs on
PowerPC based Macintosh computers, and, in October 2000, was
being ported to
Intel processor-based computers and
compatible systems by the
Darwin community.
2. <
programming, tool> A general purpose structuring tool of
use in building complex
distributed systems from diverse
components and diverse component interaction mechanisms.
Darwin is being developed by the Distributed Software
Engineering Section of the Department of Computing at
Imperial College. It is in essence a
declarative binding
language which can be used to define hierarchic compositions
of interconnected components. Distribution is dealt with
orthogonally to system structuring. The language allows the
specification of both static structures and dynamic structures
which evolve during execution. The central abstractions
managed by
Darwin are components and services. Bindings are
formed by manipulating references to services.
The
operational semantics of
Darwin is described in terms of
the
Pi-calculus,
Milner's calculus of mobile processes.
The correspondence between the treatment of names in the
Pi-calculus and the management of service references in
Darwin
leads to an elegant and concise Pi-calculus model of Darwin's
operational semantics. The model has proved useful in
arguing the correctness of
Darwin implementations and in
designing extensions to
Darwin and reasoning about their
behaviour.
{
Distributed Software Engineering Section
(http://www-dse.doc.ic.ac.uk/)}. {
darwin/">Darwin publications
(http://scorch.doc.ic.ac.uk/dse-papers/darwin/)}.
E-mail: Jeff Magee <
jnm@doc.ic.ac.uk>, Naranker Dulay
<
nd@doc.ic.ac.uk>.
3.
Core War.
(2003-08-08)